string->bytevector - transcode a string to a bytevector

LIBRARY

(import (rnrs))                     ;R6RS
(import (rnrs io ports))            ;R6RS

SYNOPSIS

(string->bytevector string transcoder)

DESCRIPTION

Returns the bytevector that results from transcoding string according to the output direction of transcoder.

RETURN VALUES

Returns a single value; a bytevector.

EXAMPLES

(string->bytevector "Quux" (native-transcoder))
        => #vu8(81 117 117 120)

string->bytevector "€"
                   (make-transcoder (latin-1-codec)
                                    (native-eol-style)
                                    (error-handling-mode raise)))
        => &i/o-encoding

APPLICATION USAGE

This procedure is a more general alternative to string->utf8(3scm).

COMPATIBILITY

This procedure is unique to R6RS.

ERRORS

This procedure can raise exceptions with the following condition types:
&assertion (R6RS)
The wrong number of arguments was passed or an argument was outside its domain.
&i/o-encoding (R6RS)
A character was encountered that could not be translated into bytes, and transcoder's error-handling-mode is raise.

SEE ALSO

bytevector->string(3scm), string->utf8(3scm), open-transcoder(3scm),

STANDARDS

R6RS

HISTORY

This procedure first appeared in R6RS as part of the redesigned I/O system.

AUTHORS

This page is part of the scheme-manpages project. It includes materials from the RnRS documents. More information can be found at https://github.com/schemedoc/manpages/.


Markup created by unroff 1.0sc,    March 04, 2023.